import axios from '@/libs/api.request'

//赛事管理
class calculationApi {


  // 积分列表
  queryList(params) {
    return axios.request({
      url: '/personRank/queryList',
      method: 'post',
      data: params
    })
  }

  // 选手积分添加
  add(params) {
    return axios.request({
      url: '/personRank/add',
      method: 'post',
      data: params
    })
  }

  // 积分计算删除
  del(params) {
    return axios.request({
      url: '/personRank/del',
      method: 'delete',
      data: params
    })
  }

  // 新增手动计算
  reckon(params) {
    return axios.request({
      url: '/personRankDetail/reckon',
      method: 'post',
      data: params
    })
  }

  // 自动计算（定时计算）
  scheduledEdit(params) {
    // 修改
    if (params.scheduledId != null) {
      return axios.request({
        url: '/scheduledtask/edit',
        method: 'post',
        data: params
      })
    }
    // 新增
    return axios.request({
      url: '/scheduledtask/add',
      method: 'post',
      data: [params]
    })
  }

  // 定时计算 删除
  scheduledDel(params) {
    return axios.request({
      url: '/scheduledtask/delete',
      method: 'delete',
      data: params
    })
  }

  //定时计算列表
  scheduledList(params) {
    return axios.request({
      url: '/scheduledtask/queryList',
      method: 'post',
      data: params
    })
  }

  //定时计算 (1 启动 0 停用)
  updateTaskStatus(params) {
    if (params.status === "0") {
      return axios.request({
        url: '/scheduledtask/start',
        method: 'post',
        data: params.scheduledId
      })
    }
    return axios.request({
      url: '/scheduledtask/stop',
      method: 'post',
      data: params.scheduledId
    })
  }

  // 获取参赛选手数量
  getPlayersNumber(params) {
    return axios.request({
      url: '/personRankDetail/playersNumber',
      method: 'post',
      data: params
    })
  }
  // 积分计算结果保存
  rankDetailAdd(params) {
    return axios.request({
      url: '/personRankDetail/add',
      method: 'post',
      data: params
    })
  }

  // 单条积分计算规则详细
  rankDetailOne(rankId) {
    return axios.request({
      url: '/personRank/getOne/' + rankId
    })
  }
  // 单条积分计算规则结果个人详情
  personRankDetail(detailId) {
    return axios.request({
      url: '/personRankDetail/getOne/' + detailId
    })
  }


  // 积分计算结果列表
  rankDetail(params) {
    return axios.request({
      url: '/personRankDetail/queryList',
      method: 'post',
      data: params
    })
  }

  // 选手个人积分列表
  queryUserList(params) {
    return axios.request({
      url: '/fiedscore/queryUserList',
      method: 'post',
      data: params
    })
  }
   // 计算结果发布
   publish(params) {
    return axios.request({
      url: '/personRank/publish',
      method: 'post',
      data: params
    })
  }
  // 导出计算结果
  exportExcel(params){
    return axios.request({
      url: '/personRankDetail/exportExcel',
      method: 'post',
      data: params
    })
  }
// 导出计算结果-个人积分列表
  exportUserExcel(params){
    return axios.request({
      url: '/personRankDetail/exportUserExcel',
      method: 'post',
      data: params
    })
  }

}


export default calculationApi
